9d4447e3aedb287a6e4a8b363daed5cc7b08781a,compiler/frontend/src/org/jetbrains/jet/lang/resolve/MemberComparator.java,MemberComparator,compare,#DeclarationDescriptor#DeclarationDescriptor#,57
Before Change
}
}
return c1.getValueParameters().size() - c2.getValueParameters().size();
}
}
After Change
}
CallableDescriptor c1 = (CallableDescriptor)o1;
CallableDescriptor c2 = (CallableDescriptor)o2;
ReceiverParameterDescriptor c1ReceiverParameter = c1.getReceiverParameter();
ReceiverParameterDescriptor c2ReceiverParameter = c2.getReceiverParameter();
assert (c1ReceiverParameter != null) == (c2ReceiverParameter != null);
if (c1ReceiverParameter != null) {
String r1 = DescriptorRenderer.TEXT.renderType(c1ReceiverParameter.getType());
String r2 = DescriptorRenderer.TEXT.renderType(c2ReceiverParameter.getType());
int receiversCompareTo = r1.compareTo(r2);
if (receiversCompareTo != 0) {
return receiversCompareTo;
}
}
List<ValueParameterDescriptor> c1ValueParameters = c1.getValueParameters();
List<ValueParameterDescriptor> c2ValueParameters = c2.getValueParameters();
for (int i = 0; i < Math.min(c1ValueParameters.size(), c2ValueParameters.size()); i++) {
String p1 = DescriptorRenderer.TEXT.renderType(c1ValueParameters.get(i).getType());
String p2 = DescriptorRenderer.TEXT.renderType(c2ValueParameters.get(i).getType());
int parametersCompareTo = p1.compareTo(p2);
if (parametersCompareTo != 0) {
return parametersCompareTo;
}
}
int valueParametersNumberCompareTo = c1ValueParameters.size() - c2ValueParameters.size();
if (valueParametersNumberCompareTo != 0) {
return valueParametersNumberCompareTo;
}